The present invention relates to a method for the control of flows of digital information between sources and destinations connected by intermediate switching entities organized in networks.
In particular, it enables the control of digital information flows between entities of a switch, for example a switch of the ATM or asynchronous transfer mode type,
Large-capacity switches are often based on the use of intermediate switching entities, internal switching modules, organized in networks between input modules and output modules. The digital information is transmitted in cellular form. At input of the network, the cells are arranged in queues depending on their destination. If necessary, these queues may be subdivided to take account of priority of transit within the network. This type of priority may be called internal priority. It determines the priority within the switch. A second type of priority can be identified. It is called external priority. External priority gives output priority to the physical port of an output module. For an output module, the term xe2x80x98portxe2x80x99 designates an output. Hereinafter in the document, the term xe2x80x98portxe2x80x99 designates the association between a physical port of an output module and an external priority and the term xe2x80x98priorityxe2x80x99 designates the internal priority within the network.
The digital information that is switched by a switch is conveyed by connections set up between an input module and a port. Various types of connections exist and have been defined by the ATM Forum. They correspond to the different services that may be offered by a switch.
A first type of connection called a real-time connection generates traffic with known parameters; This traffic corresponds in particular to CBR (Constant Bit Rate) and VBRrt (Variable Bit Rate real time) services. Switching resources internal to the switch are reserved a priori as a function of the parameters of the traffic. The connections of this type are routed internally in the network in such a way that the switch renders the service that it undertook to perform when the connection was made. These connections do not raise any problems of congestion.
A second type of connection called a non-real time connection brings together connections corresponding especially to the ABR (Available Bit Rate), VBRnrt (Variable Bit Rate non-real time), UBR (Unspecified Bit Rate) and ABT (ATM Block Transfer) services. The corresponding connections are capable of generating sporadic traffic. A process of internal routing is not sufficient to resolve the problem of arrivals in blocks of cells which may generate phenomena of congestion in an internal switching module and/or at a port. In this case, a control of flows is implemented.
There are various known methods of controlling flows in a network that may be classified as a function of the entities of the network that they involve and as a function of the entities to which the control is applied. The corresponding classification brings out:
methods to control flows in leaps,
end-to-end flow control methods without participation of the intermediate switching entities and without control over these entities,
end-to-end flow control methods with the participation of the intermediate switching entities and with control over these entities.
Methods of flow control by leaps are carried out between entities, generally by an exchange of credit as defined by the QFC alliance (the Quantum Flow Control which is an alliance of industrialists interested in flow control mechanisms). Flow control by leaps can also be done by a slotting system as defined in the UIT Recommendation X.25. These controls, which are designed for networks generally external to switches, may be adapted to the control of flows in a switch. However, the low complexity and low memory capacity of the internal switching modules, dictated by constraints of cost of the switch, limit their role and enable them to achieve only a rudimentary flow control.
The end-to-end flow controls without participation of the intermediate switching entities and without control over these entities correspond to annex propositions covered by the term xe2x80x98tunnelingxe2x80x99 and set up by the ATM Forum or the QFC alliance. The control provides information only to the source, an input module, on a state of congestion of the destination, which is an output module. The control does not resolve the problem of congestion of the intermediate switching entities.
End-to-end flow controls with participation of intermediate switching entities and with control over these entities have the drawback of obtaining participation by the intermediate switching entities. They are thus incompatible with the constraints of low complexity and low memory capacity imposed on the internal switching modules that constitute the intermediate switching entities. A flow control of this kind is implemented by the ABR services defined by the ATM Forum.
The invention proposes to resolve the problems of congestion both at the destination such as a port and at an intermediate entity such as an internal switching module without requiring the participation of the intermediate switching entities,
A problem of congestion may arise through the following situation. Between a specific source and a specific destination, a first flow with a priority k is blocked. Between the same source and the same destination, a second flow with a priority strictly lower than k is permitted.
The invention proposes especially to prevent the above situation.
To this end, an object of the invention is a method for the control of flows of digital information, transmitted in the form of cells, between sources and destinations between which connections are set up implementing intermediate switching entities organized in networks, wherein the sources and the destinations achieve the control of flows without the participation, in the control, of the intermediate switching entities, by computing a state of congestion of the intermediate switching entities and computing a state of congestion of the destinations to control a number of cells that may be transmitted by a source to a destination.
An advantage of the method is that it achieves a control of flows between the source and the destination without the participation of the intermediate switching entities. The control of flows is based on an exchange of credits of cells between the destination and the source to permit the source to transmit cells to the destination.
In a preferred embodiment of the method, the control of flows that is achieved ensures, for a given flow, that there will be a first upper limit on the number of cells contained within the network of intermediate switching entities and a second upper limit on the number of cells distributed between the interior of the network of intermediate switching entities and the output module.